#ifndef __WXD_EXCEPTION_H__
#define __WXD_EXCEPTION_H__

#include "defs.h"

class WXDLLIMPEXP_DIRECTUI wxDException
{
public:
	wxDException( int errorCode );
	wxDException( int errorCode, const wxString& errorMessage );
	wxDException( const wxDException& e );
	virtual ~wxDException();

	int GetErrorCode() const { return (mErrorCode & 0xff); }

	int GetExtendedErrorCode() const { return mErrorCode; }

	const wxString GetMessage() const { return mErrorMessage; }

	static const wxString ErrorCodeAsString(int errorCode);

protected:
	int mErrorCode;
	wxString mErrorMessage;
};

#endif